<?php

require_once 'resource/db.inc.php';
require_once 'resource/crud.inc.php';

function opCreateGym(&$errores, &$exitos) {
    $nombre = isset($_POST['nombre']) ? filter_var($_POST['nombre'], FILTER_SANITIZE_STRING) : '';
    $direccion = isset($_POST['direccion']) ? filter_var($_POST['direccion'], FILTER_SANITIZE_STRING) : '';
    $cif = isset($_POST['cif']) ? filter_var($_POST['cif'], FILTER_SANITIZE_STRING) : '';
    $telefono = isset($_POST['telefono']) ? filter_var($_POST['telefono'], FILTER_SANITIZE_NUMBER_INT) : '';
    $website = isset($_POST['website']) ? filter_var($_POST['website'], FILTER_SANITIZE_URL) : '';
    $email = isset($_POST['email']) ? filter_var($_POST['email'], FILTER_SANITIZE_EMAIL) : '';

    if (empty($nombre) || !$nombre) {
        $errores[] = "No se ha proporcionado correctamente el nombre del gimnasio";
    }
    if (empty($direccion) || !$direccion) {
        $errores[] = "No se ha proporcionado correctamente la direcci&oacute;n del gimnasio";
    }
    if (empty($cif) || !$cif) {
        $errores[] = "No se ha proporcionado correctamente el CIF del gimnasio";
    }
    if (empty($telefono) || !$telefono) {
        $errores[] = "No se ha proporcionado correctamente el tel&eacute;fono del gimnasio";
    }

    if (!$website) {
        $errores[] = "No se ha proporcionado correctamente la web del gimnasio";
    }
    if (!$email) {
        $errores[] = "No se ha proporcionado correctamente el email del gimnasio";
    }

    if (empty($errores)) {
        $numGimnasios = getNumGimnasiosManager($_SESSION['user_dni']) + 1;
        addGimnasio($_SESSION['user_dni']."-GIM".$numGimnasios, $_SESSION['user_dni'], $nombre, $direccion, $cif,$telefono,$website,$email);
        $exitos[] = "Gimnasio almacenado satisfactoriamente";
    }
}

function opListGyms(&$nreg, $regsxpag, &$pagina) {

    $pagina = (isset($_GET['page']) && ctype_digit($_GET['page']) && $_GET['page'] > 0 ) ? $_GET['page'] : 1;
    $registro = ($pagina > 0) ? ($pagina - 1) * $regsxpag : 0;

    if($_SESSION['user_nivel'] == 1){
    $nreg = getNumGimnasios();
    $gimnasios = getGimnasiosLimit($registro, $regsxpag);
    }elseif($_SESSION['user_nivel'] == 2){
    $nreg = getNumGimnasiosManager($_SESSION['user_dni']);
    $gimnasios = getGimnasiosManagerLimit($_SESSION['user_dni'], $registro, $regsxpag);
    }
    return $gimnasios;
}

function opDeleteGym(&$errores, &$exitos) {
    $gim_id = isset($_GET['gim_id']) ? filter_var($_GET['gim_id'], FILTER_SANITIZE_STRING) : '';

    if (empty($gim_id) || !$gim_id) {
        $errores[] = "No se ha proporcionado correctamente el identificador del gimnasio";
    }
    if (empty($errores)) {
        deleteGimnasio($gim_id, $_SESSION['user_dni']);
        $exitos[] = "Gimnasio eliminado satisfactoriamente";
    }
}

function opModifyGym(&$errores, &$exitos) {
    $gim_id = isset($_GET['gim_id']) ? filter_var($_GET['gim_id'], FILTER_SANITIZE_STRING) : '';
    $nombre = isset($_POST['nombre']) ? filter_var($_POST['nombre'], FILTER_SANITIZE_STRING) : '';
    $direccion = isset($_POST['direccion']) ? filter_var($_POST['direccion'], FILTER_SANITIZE_STRING) : '';
    $cif = isset($_POST['cif']) ? filter_var($_POST['cif'], FILTER_SANITIZE_STRING) : '';
    $telefono = isset($_POST['telefono']) ? filter_var($_POST['telefono'], FILTER_SANITIZE_NUMBER_INT) : '';
    $website = isset($_POST['website']) ? filter_var($_POST['website'], FILTER_SANITIZE_URL) : '';
    $email = isset($_POST['email']) ? filter_var($_POST['email'], FILTER_SANITIZE_EMAIL) : '';

    if (empty($nombre) || !$nombre) {
        $errores[] = "No se ha proporcionado correctamente el nombre del gimnasio";
    }
    if (empty($direccion) || !$direccion){
        $errores[] = "No se ha proporcionado correctamente la direcci&oacute;n del gimnasio";
    }
    if (empty($cif) || !$cif) {
        $errores[] = "No se ha proporcionado correctamente el CIF del gimnasio";
    }
    if (empty($telefono) || !$telefono) {
        $errores[] = "No se ha proporcionado correctamente el tel&eacute;fono del gimnasio";
    }

    if (!$website) {
        $errores[] = "No se ha proporcionado correctamente la web del gimnasio";
    }
    if (!$email) {
        $errores[] = "No se ha proporcionado correctamente el email del gimnasio";
    }

    
    if (empty($errores)) {
        updateGimnasio($gim_id, $_SESSION['user_dni'], $nombre, $direccion, $cif,$telefono,$website,$email);
        $exitos[] = "Gimnasio actualizado satisfactoriamente";
    }
}
?>


